home *** CD-ROM | disk | FTP | other *** search
/ FishMarket 1.0 / FishMarket v1.0.iso / fishies / 476-500 / disk_497 / windowshuffle / windowshuffle.doc < prev    next >
Text File  |  1992-05-06  |  11KB  |  277 lines

  1.  
  2.                             WindowShuffle
  3.  
  4.                              (Commodity)
  5.  
  6.                                   by
  7.  
  8.                             Stefan Sticht
  9.  
  10.          This program (binary), sourcecode, documentation is 
  11.  
  12.                             PUBLIC DOMAIN.
  13.  
  14.                      You may do anything with it!
  15.  
  16. Purpose of this commodity:
  17. --------------------------
  18. With  WindowShuffle  you  can map four functions to any keys:
  19.  
  20.             activate next  window
  21.             activate previous window
  22.             activate and bring next window to front
  23.             activate  and bring previous window to front
  24.  
  25. Now you can 'walk' through the windows on your screen.
  26. You  may  exclude  windows from being activated or brought to front by
  27. specifing  their  window  title  (wildcards  allowed).  Activating and
  28. bringing  to  front  of backdrop windows or of windows without a title
  29. can be disabled.
  30.  
  31. Requirements:
  32. -------------
  33. This  commodity  requires  at least Kickstart 37.* and Workbench 37.*.
  34. Please  check  this  out  using Version in the Shell or About from the
  35. Workbench's   Workbench   menu.    You   also   need   to   have   the
  36. commodities.library  in your libs:  directory.  Please check this out:
  37. type "dir libs:" in the shell.
  38.  
  39. How to start a commodity:
  40. -------------------------
  41. First  there  are  two  basically different ways to start a commodity:
  42. via Workbench or via Shell.
  43.  
  44.     Starting  it  via Workbench is extrem simple:  just doubleclick on
  45. its  icon  and  the  commodity gets started.  Perhaps you might change
  46. some  parameters of the commodity.  You do this with tool types.  Tool
  47. types can be changed by clicking at the commodities icon and selecting
  48. Information from the Workbench's Icon menu.  In the window which opens
  49. you  see a listview gadget in which all tool types are listed.  Please
  50. refer  to  your  Workbench  documentation  on  how to change this tool
  51. types.  Which parameters you can change for this specific commodity is
  52. described below.
  53.     Please  note  that  another  double  click on the commodity's icon
  54. forces  the  commodity  to quit, if it's already running.  Running two
  55. copies  of  WindowShuffle  at the same time isn't useful and therefore
  56. possible.
  57.     To  start  a commodity via shell you type in its name.  If you get
  58. an  "Unknown  command  ???"  error  message,  you  have misspelled the
  59. commodity's  name  or the commodity isn't in your current directory or
  60. in the current search path.  The easiest way is to change your current
  61. directory  to the location of the commodity using the CD command.  You
  62. can  change  parameters  of  a commodity by command line options.  The
  63. available options are listed with ?  as the first parameter:
  64.  
  65.                            WindowShuffle ?
  66.  
  67. gives you a list of the command line options.  The explanation of each
  68. option is below.  Starting the commodity once more while it is already
  69. running forces the commodity to quit.
  70.  
  71.     If  you  want  the  commodity to be started at every boot-up, it's
  72. best to add this line to your User-Startup file:
  73.  
  74.                      <path>WindowShuffle <options>
  75.  
  76. Don't  forget  to  replace  <path>  by  the  path to the commodities's
  77. location  and <options> by the options you want to change. For example
  78. add this line if your commodity is located in the Tools drawer of your
  79. boot disk:
  80.  
  81.                          Tools/WindowShuffle
  82.  
  83.     Another way to start the commodity at every boot-up is to drag its
  84. icon  in  the  WBStartup drawer of your boot disk.  Then the commodity
  85. gets  started  as if you had double clicked on its icon.  But you have
  86. to  add the tool type DONOTWAIT to the icon.
  87.  
  88. Using Exchange:
  89. ---------------
  90. Exchange is the commodities controller program. With Exchange you can
  91. control all commodities: you can kill, disable, enable, show and hide
  92. commodities.
  93.     Start  the  Exchange  program,  which  usually is in the Utilities
  94. drawer  of your boot disk, by double clicking its icon.  Now you see a
  95. list  of  the available commodities.  Select the commodity you want to
  96. control.   The  commodities title, description and status is shown now
  97. below the listview gadget.
  98.     You  can  kill  the  commodity  using  the  Kill gadget...  If the
  99. commodity  has  a  window  to  open,  in which you usually change some
  100. parameters,  you  can  open  this window using Show.  Hide closes this
  101. window. WindowShuffle has no window.
  102.  
  103.                         Changeable parameters:
  104.                         ----------------------
  105.  
  106. CX_Priority:
  107. ------------
  108. You  can  specify the priority of the Commodity within the commodities
  109. queue using the tool type or commandline option CX_PRIORITY=<n>, where
  110. <n> is the decimal value for the priority.  Default priority is 0.
  111.  
  112. NEXT_ACTIVE:
  113. ------------
  114. With  the tool type or commandline option NEXT_ACTIVE=<action> you can
  115. specify  the  key,  with  which  the  next  window  will be activated.
  116. <action> is an input description string as explained below. Default is
  117. "NEXT_ACTIVE=lcommand lshift k" (left amiga key & left shift key & k).
  118.  
  119. PREV_ACTIVE:
  120. ------------
  121. With  the tool type or commandline option PREV_ACTIVE=<action> you can
  122. specify  the  key,  with  which the previous window will be activated.
  123. <action> is an input description string as explained below. Default is
  124. "PREV_ACTIVE=lcommand lshift j" (left amiga key & left shift key & j).
  125.  
  126. NEXT_BOTH:
  127. ----------
  128. With  the  tool  type or commandline option NEXT_BOTH=<action> you can
  129. specify  the  key,  with  which  the next window will be activated and
  130. brought  in  front  of  all  other  windows.   <action>  is  an  input
  131. description string as explained below.  Default is "NEXT_BOTH=lcommand
  132. k" (left amiga key & k).
  133.  
  134. PREV_BOTH:
  135. ----------
  136. With  the  tool  type or commandline option PREV_BOTH=<action> you can
  137. specify  the key, with which the previous window will be activated and
  138. brought  in  front  of  all  other  windows.   <action>  is  an  input
  139. description string as explained below.  Default is "PREV_BOTH=lcommand
  140. j" (left amiga key & j).
  141.  
  142. BACKDROP:
  143. ---------
  144. With  the  tool  type  or  commandline  option BACKDROP=YES|NO you can
  145. specify wether backdrop windows (window which are always behind others
  146. and  which  can't  be  brought  to front) should be activated.  YES|NO
  147. means  you  may  either  use  YES or NO, but nothing else.  YES means,
  148. activate them, NO, don't activate.  Default is NO.  WindowShuffle will
  149. never try to bring backdrop windows to front.
  150.  
  151. NOWINTITLE:
  152. -----------
  153. With  the  tool  type  or commandline option NOWINTITLE=YES|NO you can
  154. specify,  wether  window  without  a  title should be activated and/or
  155. brought  to  front.   YES|NO  means  you may either use YES or NO, but
  156. nothing  else.   YES  means,  activate  and/or  bring  them  to front.
  157. Default is NO.
  158.  
  159. REFUSE:
  160. -------
  161. With  the  tool  type or commandline option REFUSE=<wildcards> you can
  162. specify  one  or more titles of windows, which should never be brought
  163. to  front and never be activated.  <wildcards> is an AmigaDOS wildcard
  164. string.   All  standard  AmigaDOS  wildcards are allowed like the ones
  165. allowed  by  for  example  "dir".  Just imagine window titles are file
  166. names.   Please consult your AmigaDOS manual for detailed description.
  167. Important:   upper  and  lower  characters  *are*  distinguished, they
  168. aren't the same!
  169.  
  170. Examples:
  171.  
  172. Don't  activate  the  following  titles:  "Workbench", "Clock" and all
  173. disk  windows  (note  that  all  disk windows have the keywords "full"
  174. "free" "use"):
  175.  
  176.               REFUSE=(Workbench|Clock|#?full#?free#?use)
  177.  
  178. If you *only* want to activate windows which name begins with "Shell":
  179.  
  180.                           REFUSE=~(Shell#?)
  181.  
  182. If you only don't want to bring the Workbench window to front (when
  183. in non backdrop mode):
  184.  
  185.                            REFUSE=Workbench
  186.  
  187.  
  188.                       Input description strings
  189.                       -------------------------
  190.  
  191. With  input  description  strings  you  can  specify  almost any input
  192. action,  for  example  the action lshift f1, which means that pressing
  193. the  left  shift  and  the  f1  key  together  is the action.  In this
  194. commodity  you  can specify the action to open the commodity's window,
  195. as described above.
  196.  
  197. Input description strings have the following template:
  198.  
  199.       [class] (([-]qual)|syn)* [[-]upstroke] [highmap|ANSIcode]
  200.  
  201. (* means zero or more occurances of the of the expression in brackets)
  202.  
  203. class   is one of the following strings:
  204.         rawkey, rawmouse, event, pointerpos, timer, newprefs,
  205.         diskremoved, diskinserted.
  206.         If not specified, the class is taken to be "rawkey".
  207.  
  208. qual    is one of the strings:
  209.         lshift, rshift, capslock, control, lalt, ralt, lcommand,
  210.         rcommand, numericpad, repeat, midbutton, rbutton, leftbutton,
  211.         relativemouse
  212.         A preceding '-' means that the value of the corresponding
  213.         qualifier is to be considered irrelevant.
  214.  
  215. syn     (synonym) is one of the strings: shift, caps, alt
  216.         shift means "left or right shift"
  217.         caps means "shift or capslock"
  218.         alt means "either alt key"
  219.  
  220. upstroke (literally "upstroke")
  221.         if this token is absent, only downstrokes are considered
  222.         for rawmouse (mousebuttons) and rawkey events.  If it is
  223.         present alone, only upstrokes count.  If it preceded by
  224.         '-' it means that both up and down strokes are included.
  225.  
  226. highmap one of the strings:
  227.         comma, space, backspace, tab, enter, return, esc, del, up, down,
  228.         right, left, help, f1, f2, f3, f4, f5, f6, f7, f8, f9, f10,
  229.         0, 1, 2, 3, 4, 5, 6, 7, 8, 9, (, ), /, *, -, +
  230.  
  231. ansicode a single character token is interpreted as a character code,
  232.         which is looked up in the system default keymap.
  233.  
  234.  
  235. Some full examples:
  236. -------------------
  237.  
  238. The defaults (too show how you would specify them):
  239.  
  240. WindowShuffle CX_PRIORITY=0 "NEXT_ACTIVATE=lcommand lshift k"
  241. "PREV_ACTIVATE=lcommand lshift j" "NEXT_BOTH=lcommand k" "PREV_BOTH=lcommand j"
  242. BACKDROP=NO NOWINTITLE=NO
  243.  
  244. defaults + refuse title "Workbench":
  245.  
  246. WindowShuffle Refuse=Workbench
  247.  
  248. refuse also disk drawers:
  249.  
  250. WindowShuffle Refuse=(Workbench|#?full#?free#?use)
  251.  
  252. refuse all window which don't have a 'W' as their first character;
  253. use right amiga key (with right shift) and cursor down/up:
  254.  
  255. WindowShuffle "NEXT_ACTIVATE=rcommand rshift down"
  256. "PREV_ACTIVATE=rcommand rshift up" "NEXT_BOTH=rcommand down"
  257. "PREV_BOTH=rcommand up" REFUSE=~(W#?)
  258.  
  259.  
  260. Send bug-reports, enhancement-requests, questions, gifts(!) to:
  261. ---------------------------------------------------------------
  262. Stefan Sticht
  263. Bibereckerweg 40a
  264. D-8390 Passau 18
  265. FRG
  266.  
  267. or (better) EMail to:
  268. Internet: cbmvax.commodore.com!cbmehq!cbmger!edith!sticht@rutgers.EDU
  269.       or: IWSTICHT@ibm.rz.uni-passau.de
  270. Fido-Net: Stefan Sticht (2:242/16)
  271.  
  272.  
  273.  
  274. Please include the version number of the commodity in every bug report
  275. You  get  the  version  number  using  the  Version  command:
  276.                      Version [<path>]<commodity>
  277.